package com.qf.filter;

import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;

/**
 * @author fy
 * @version V1.0
 * @Project day41
 * @Package com.qf.filter
 * @Description:
 * @Date 2022/5/20 16:35
 */

/**
 * 请求会第一个先进入这个过滤器，过滤器处理完成放行后才会进入servlet
 * 字符集乱码处理过滤器(所有的访问路径都会经过这个过滤器
 *  )
 */
@WebFilter("/*")
public class EncodingFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        //处理请求对象字符集编码
        servletRequest.setCharacterEncoding("utf-8");
        //处理响应对象字符集编码
        servletResponse.setCharacterEncoding("utf-8");
        servletResponse.setContentType("text/html;charset=utf-8");

        //放行请求,到下一个过滤器
        filterChain.doFilter(servletRequest, servletResponse);

        //
    }

    @Override
    public void destroy() {

    }
}
